-
-
Notifications
You must be signed in to change notification settings - Fork 9.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Maintainer's guide for Homebrew on Linux (linuxbrew-core) #6448
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work! I've made some suggestions in my review.
- there is already an open PR for the formula's bottle | ||
- the current branch is not master | ||
|
||
By default, running this script won't output the errors. To see the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Something like...
If a formula you are expecting to bottle is skipped, there may be an error; by default, this script won't output the errors.
These formulae are fine for users to bump with `brew bump-formula-pr`, | ||
but you should request that they remove the existing `x86_64_linux` | ||
bottle SHA line so that CI will build a bottle for the new version | ||
correctly. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Clarify why this is the case.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
correctly. | |
correctly. If the bottle SHA isn't removed, CI will fail with the following error: | |
> `--keep-old` was passed but there are changes in `sha256 => x86_64_linux` |
|
||
By default, running this script won't output the errors. To see the | ||
errors, run `brew find-formulae-to-bottle --verbose` separate to the | ||
`for` loop above. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It should probably output the errors to stderr
by default.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll happily review a PR if you find a way to do it. This conversation happened in https://github.com/Linuxbrew/homebrew-developer/pull/112 too (my rationale for --verbose
was this and this).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
opoo
writes the warnings to $stderr
.
See https://github.com/Linuxbrew/homebrew-developer/pull/112#issuecomment-523287506
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agree with the existing comments but great work here @issyl0. Good to get this all dumped somewhere public. I've found listing things like this is often a good first step to automating things (https://github.blog/2015-10-06-runnable-documentation/ may be an interesting read here).
@@ -0,0 +1,269 @@ | |||
# Homebrew on Linux Maintainer Guide |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe put linuxbrew-core
in the title
The `brew bump-formula-pr` command will raise PRs against the Linux | ||
formula repo for upstream Mac formulae when running on Linux. This | ||
isn't how version bumps are done for _most_ formulae. Redirect users | ||
to raise their PRs in Homebrew/homebrew-core: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could link to #6341 here to nudge people to help?
I think you can feel free to merge this before those are done, if desired. It's sometimes more motivating that way and also easier to review. |
b166e7f
to
60a127a
Compare
Thanks, @MikeMcQuaid! Merging this as-is would be good, then we can make incremental improvements and document new stuff as we do it. :-) |
- There are a lot more manual steps in Homebrew on Linux (Linuxbrew) land than there are in Homebrew (core), it feels like. - This is a first attempt at a maintainer's guide. I have basically tried to brain-dump everything that Michka and Shaun have taught me over the months into something consumable for future Homebrew on Linux maintainers! - Some of it is overly verbose - the merging docs are taken from [Linuxbrew/homebrew-developer's docs](https://github.com/Linuxbrew/homebrew-developer/blob/master/docs/merge-homebrew-core.md) which were recently updated to reflect reality but probably don't need to have so many words: just some instructions. :-)
60a127a
to
6a81aa2
Compare
Bah, I missed @jonchang's last comment. Amended! |
Have you written new tests for your changes? Here's an example.Have you successfully runbrew style
with your changes locally?Have you successfully runbrew tests
with your changes locally?land than there are in Homebrew (core), it feels like.
tried to brain-dump everything that Michka and Shaun have taught me
over the months into something consumable for future Homebrew on Linux
maintainers!
Linuxbrew/homebrew-developer's docs
which were recently updated to reflect reality but probably don't need
to have so many words: just some instructions. :-)
brew pull --bottle
andbrew squash-bottle-pr
)